﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CapaDatos;
using Entidades;
using CapaDatos.Adapters;

namespace CapaLogica
{
  public  class AlumnoLogica
    {

        public void Agregar(Alumno entidad)
        {

            new AlumnoAdapter().Agregar(entidad);

        }

        public void Modificar(Alumno entidad)
        {

            new AlumnoAdapter().Modificar(entidad);

        }

        public Alumno ObtenerEntidad(Guid idAlumno)
        {
            return new AlumnoAdapter().ObtenerEntidad(idAlumno);
        }

        public Alumno ObtenerEntidadParaEditar(Guid idAlumno)
        {
            return new AlumnoAdapter("Edicion").ObtenerEntidad(idAlumno);
        }


        public bool ExisteDNI(string dni, Guid legajo)
        {

            return new AlumnoAdapter().ExisteDNI(dni, legajo);

        }

        public bool ExisteEntidad(Guid legajo)
        {
            return new AlumnoAdapter().ExisteEntidad(legajo);
        }

        public List<ViewEntity> ObtenerEntidades(string dni, string nombre, string apellido)
        {

            return new AlumnoAdapter().ObtenerEntidades(dni, nombre, apellido);

        }

        public List<ViewEntity> ObtenerEntidadesParaEditar(string dni, string nombre, string apellido)
        {

            return new AlumnoAdapter("Edicion").ObtenerEntidades(dni, nombre, apellido);

        }

        public bool VerificarRelacionFamiliar(Guid legajoAlumno, Guid legajoFamiliar, Guid idParentesco)
        {
            return new AlumnoAdapter().VerificarRelacionFamiliar(legajoAlumno, legajoFamiliar, idParentesco);

        }

        public void EliminarRelacionesFamiliares(Guid idAlumno)
        {

             new AlumnoAdapter().EliminarRelacionesFamiliares(idAlumno);

        }

        public List<InformeListaAlumnos> GenerarInformeListaAlumnos(Guid idTurno)
        {

            return new AlumnoAdapter().GenerarInformeListaAlumnos(idTurno);

        }

        public List<ViewEntity> ObtenerAlumnosCiclo(Guid idCicloLectivo)
        {
            return new AlumnoAdapter().ObtenerAlumnosCiclo(idCicloLectivo);

        }


        public List<ViewEntity> ObtenerAlumnosInscripcion(Guid idCicloLectivo)
        {
            return new AlumnoAdapter().ObtenerAlumnosInscripcion(idCicloLectivo);

        }

    }
}
